import QtQuick 1.0

Item {
    id:_root
    property bool isMobile: false           // モバイルか

    property real dpi: 94.1;
    property real dpiDesktop: 94.1;         // DPI (デスクトップ）
    property real dpiMobile: 160;           // dpi mobile
    property real density: 1.0;             // ドット密度


    // デバイス依存設定
    // twitter
    //rewit q
    property string consumerSecret: "EBvNCTFA8C3p3DoOm39wwtGfgxO53m7G9k8WgZIe4XU"
    property string consumerKey: "DlEc1ybVZ151JAhCXK3w"

    // 全般
    property int updateInterval: 60                     // 更新間隔（秒）
    property int inReplyCountMax: 4                     // 返信元を追いかける回数
    property int updateCount: 30                        // 取得する数
    property bool toFocusTweetButton: false             // ツイートボタンにフォーカスを当てるか
    property int viewCountMax: 1000                     // 表示する件数の最大値

    //フォントサイズ
    property int fontPixelSizeTitle: 12                 // タイトル（ユーザー名）
    property int fontPixelSizeMessage: 14               // 本文（ツイート）
    property int fontPixelSizeInfomation: 10            // 情報（時間など）
    property int fontPixelSizeInputBox: 13              // 入力ボックス
    property int fontPixelSizeRemainCount: 16           // 入力文字残数
    property int fontPixelSizeTweetButton: 16           // ツイートボタン

    property int fontPixelSizeContext: 16               // コンテキストメニュー
    property int fontPixelSizeButton: 16                // ボタン
    property int fontPixelSizeDlgMessageL: 18           // ダイアログメッセージ
    property int fontPixelSizeDlgMessageM: 16           // ダイアログメッセージ
    property int fontPixelSizeDlgMessageS: 14           // ダイアログメッセージ


    // モバイルかどうかを設定
    onIsMobileChanged: {
        if(isMobile){
            dpi = dpiMobile;
        }else{
            dpi = dpiDesktop;
        }
        calcDensity();
    }

    // モバイルのDPIが変更されたら再計算
    onDpiMobileChanged: {
        calcDensity();
    }

    // densityを再計算する
    function calcDensity(){
        if(isMobile){
            density = dpiMobile / dpiDesktop;
        }else{
            density = 1.0;
        }
    }

    // デバイスがモバイルか判断して情報取得
    function check(module, version, element, statement, parent) {
        var ret = false;
        try{
            var obj = Qt.createQmlObject("import " + module + " " + version + "; "
                                         + element + "{function func(){"
                                         + statement + "}}"
                                         , parent);
            obj.func();
            obj.destroy();
            ret = true;
        }catch(e){
            console.debug("device info:exception:" + e);
        }
        return ret;
    }

    Component.onCompleted: {
        // デバイスチェック
//        if(isForceDesktop){
//        }else if(check("com.nokia.symbian", "1.0"
//                 , "Window"
//                 , "if(Screen.dpi !== undefined){parent.dpiMobile = Screen.dpi;}"
//                 , _root)){
//            // mobile(symbian)
//            isMobile = true;
//        }else if(check("com.nokia.meego", "1.0"
//                 , "Window"
//                 , "if(Screen.dpi !== undefined){parent.dpiMobile = Screen.dpi;}"
//                 , _root)){
//            // mobile(meego)
//            isMobile = true;
//        }else{
//            // desktop
//        }
    }
}
